from enum import Enum


class Code(Enum):

    OK = '0'
    USERNAME_PASSWORD_MISMATCH = '10001'
    SMS_CODE_MISMATCH = '10002'
    EMAIL_CODE_MISMATCH = '10021'
    USERNAME_EXISTS_ERROR = '10004'
    PASSWORD_NONE_ERROR = '10005'
    PASSWORD_STRENGTH_ERROR = '10006'

    TENANT_NO_ACCESS = '10003'
    TENANT_NO_EXISTS = '10007'
    CODE_EXISTS_ERROR = '10008'
    CODE_FILENAME_EXISTS_ERROR = '10009'
    AUTHCODE_ERROR = '10010'
    OLD_PASSWORD_ERROR = '10011'
    USER_EXISTS_ERROR = '10012'
    SLUG_EXISTS_ERROR = '10013'
    REGISTER_FAST_ERROR = '10014'
    URI_FROMAT_ERROR = '10015'
    FILE_FROMAT_ERROR = '10016'
    DATA_PATH_ERROR = '10017'
    EMAIL_FROMAT_ERROR = '10018'
    MOBILE_FROMAT_ERROR = '10019'
    PASSWORD_CHECK_ERROR = '10020'
    MOBILE_NOT_EXISTS_ERROR = '10021'
    MOBILE_EXISTS_ERROR = '10022'
    EMAIL_NOT_EXISTS_ERROR = '10023'
    EMAIL_EXISTS_ERROR = '10024'
    QUERY_PARAM_ERROR = '10025'
    DUPLICATED_RECORD_ERROR = '10026'
    POST_DATA_ERROR = '10027'
    PROVIDER_NOT_EXISTS_ERROR = '10028'
    PASSWORD_EXPIRED_ERROR = '10029'
    PERMISSION_ERROR = '10030'

    SMS_PROVIDER_IS_MISSING = '11001'
    AUTHCODE_PROVIDER_IS_MISSING = '11002'
    LOCAL_STORAGE_PROVIDER_IS_MISSING = '11003'

    USER_IMPORT_ERROR = '12001'
    GROUP_IMPORT_ERROR = '12002'
    MOBILE_ERROR = '12003'
    EMAIL_ERROR = '12004'
    CLIENT_ID_ERROR = '12005'
    OPERATION_ID_ERROR = '12006'
    USER_PERMISSION_EXISTS_ERROR = '12007'

    ADD_AUTH_TMPL_ERROR = '13001'
